home *** CD-ROM | disk | FTP | other *** search
Wrap
/* * * GDS106 : 部分画面の複写 * */ #include <stdio.h> #include <dos.h> unsigned int GDS_move_block(signed int x1,signed int y1,signed int x2,signed int y2,signed int x3,signed int y3,unsigned char src_page,unsigned char dest_page,unsigned char mode) { union REGS inregs, outregs; struct SREGS segregs; static struct { unsigned char src_page; unsigned char dust1; signed int x1; signed int y1; signed int x2; signed int y2; unsigned char dest_page; unsigned char dust2; signed int x3; signed int y3; } work; work.src_page=src_page; work.dust1=0; work.x1=x1; work.y1=y1; work.x2=x2; work.y2=y2; work.dest_page=dest_page; work.dust1=0; work.x3=x3; work.y3=y3; segread(&segregs); segregs.ds=_DS; inregs.x.di=(unsigned int)&work; inregs.h.ah=0x87; inregs.h.al=mode; int86x(0x92,&inregs,&outregs,&segregs); return (unsigned int)outregs.h.ah; }